package com.vito.oa.act.constant;

import com.vito.base.util.Contants;
/**
 * 
 * @author xuezhennan
 *
 */
public class OaActContants extends Contants  {
	/**
	 * 表单控件（企业通讯录）
	 */
	public static final String FORM_SHOWTYPE_BOOKS="books";
	/**
	 * 表单控件（签名）
	 */
	public static final String FORM_SHOWTYPE_SIGN="sign";

	/**
	 * 公用小文本字段长度
	 */
	public final static int COL_SMALL_LENGTH = 200;
	/**
	 * 公用大文本字段长度
	 */
	public final static int COL_LARGE_LENGTH = 1000;
	
	/**
	 * 流程节点审批状态：提交申请
	 */
	public static final String APPROVE_STATUS_START="0";
	/**
	 * 流程节点审批状态：待审批
	 */
	public static final String APPROVE_STATUS_WAIT="1";
	/**
	 * 流程节点审批状态：审批中
	 */
	public static final String APPROVE_STATUS_APPROVING="2";
	/**
	 * 流程节点审批状态：已审批
	 */
	public static final String APPROVE_STATUS_APPROVED="3";
	/**
	 * 流程节点审批状态：已转交
	 */
	public static final String APPROVE_STATUS_TRANSFER="4";
	
	/**
	 * 工作流流程变量:发起人
	 */
	public static final String START_USER = "startUserId";
	/**
	 * 工作流流程变量:发起人部门
	 */
	public static final String START_USER_DEPT = "startUserDept";
	/**
	 * 工作流流程变量:发起人顶级部门
	 */
	public static final String START_USER_COMPANY = "startUserCompany";
	/**
	 * 工作流流程变量：指派人（单人）
	 */
	public static final String ASSIGN = "assignUserId";
	/**
	 * 工作流流程变量:会签assign（多人审批）
	 */
	public static final String MUTIL_ASSIGN = "userList";
	/**
	 * 工作流流程变量:驳回 （指为1有效）
	 */
	public static final String ROLL_BACK = "isok";
	
	/**
	 * 流程数据状态：正常
	 */
	public static final String PROCESS_DATA_STATUS_CONMON = "0";
	/**
	 * 流程数据状态：已删除
	 */
	public static final String PROCESS_DATA_STATUS_DELETE = "1";
	/**
	 * 流程数据状态：已归档
	 */
	public static final String PROCESS_DATA_STATUS_FILED = "2";
	
	/**
	 * 工作流状态常量：流程中
	 */
	public static final String PROCESS_STATUS_IN = "0";
	/**
	 * 工作流状态常量：完结
	 */
	public static final String PROCESS_STATUS_END = "1";
	/**
	 * 工作流状态常量：挂其中
	 */
	public static final String PROCESS_STATUS_HANGUP = "2";
	/**
	 * 工作流状态常量：拒绝
	 */
	public static final String PROCESS_STATUS_FINAL = "3";
	/**
	 * 工作流状态常量：撤回
	 */
	public static final String PROCESS_STATUS_WITHDRAW = "4";
	
	/**
	 * 职务查询范围：当前部门下
	 */
	public static final int PROCESS_ROLERANGE_DEPT = 1;
	/**
	 * 职务查询范围：直系部门下
	 */
	public static final int PROCESS_ROLERANGE_DIRECTDEPT = 2;
	/**
	 * 职务查询范围：全公司下
	 */
	public static final int PROCESS_ROLERANGE_COMPANY = 3;
	
	/**
	 * 流程所属模块:审批模块
	 */
	public static final String PROCESS_MOUDEL_TYPE_APPROVAL="power_type_3";
	/**
	 * 流程所属模块:公文流转
	 */
	public static final String PROCESS_MOUDEL_TYPE_DOCUMENT="power_type_8";
	/**
	 * 流程所属模块:资产借用
	 */
	public static final String PROCESS_MOUDEL_TYPE_ASSET="power_type_11";
	/**
	 * 分组：默认名称
	 */
	public static final String PROCESS_GROUP_SYS_NAME = "默认组";
	/**
	 * 分组：自定义组
	 */
	public static final String PROCESS_GROUP_DEFINED = "0";
	/**
	 * 分组：系统分配
	 */
	public static final String PROCESS_GROUP_SYS = "1";
	
	/**
	 * from表单属性key：存放类型
	 */
	public static final String FORM_OPER_TYPE="operType";
	/**
	 * from表单属性key：主键
	 */
	public static final String FORM_KEY_FKNAME="fkName";
	/**
	 * from表单属性key：加密
	 */
	public static final String FORM_ENCRYPT = "encrypt";
	/**
	 * 缓存的Value
	 */
	public static final String CACHE_ACT_VALUE = "vitoActCache";
	public static final String CACHE_ACT_OVER_INFO="actOverInfoCache";
	
	/**
	 * 流程copy常量，默认的流程节点个数
	 */
	public static final int ACTIVITI_PROCESS_DEFAULT_NODE_NUM = 20;
	/**
	 * 流程copy子表
	 */
	public final static String COMM_TABLE_KEY_SUB = "commons_info_sub";
	
	/**
	 * 表单mysql数据字段类型：字符型
	 */
	public static final String FORM_COL_TYPE_MYSQL_VARCHAR="VARCHAR";
	/**
	 * 表单mysql数据字段类型：浮点数
	 */
	public static final String FORM_COL_TYPE_MYSQL_NUMBER="NUMERIC(10,2)";
	/**
	 * 表单mysql数据字段类型：整数
	 */
	public static final String FORM_COL_TYPE_MYSQL_INTEGER="INTEGER";
	/**
	 * 表单mysql数据字段类型：日期
	 */
	public static final String FORM_COL_TYPE_MYSQL_DATE="DATETIME";
	
	public static final String SEPARATOR = ",";
	/**
	 * 摘要的分隔符
	 */
	public static final String SEPARATOR_VITO="@VITO@";
	/**
	 * 按钮
	 * @author xuezhennan 
	 *
	 */
	public enum ProcessButtonEnum{
		START("提交"),AGREE("同意"),END("拒绝"),HANGUP("挂起"),HANGOUT("解挂"),TRANSFER("转交"),ASSIGN("指派");
		public final String nameCh;
		private ProcessButtonEnum(String nameCh) {
			this.nameCh = nameCh;
		}
	}
	
	/**
	 * 节点属性：是否盖章
	 */
	public static final String NODE_IS_SEAL = "isSeal";
	public static final String NODE_SEAL = "seal";
	/**
	 * 节点属性：是否签名
	 */
	public static final String NODE_IS_SIGN= "isSign";
	public static final String NODE_SIGN= "sign";

	/**
	 * 会签中实例终止数量的变量
	 */
	public static final String VARIABLES_END_INSTANCES = "nrOfEndInstances";
	/**
	 * 流程跳转中的用来保存原来的路线的临时变量
	 */
	public static final String ORIGIN_TRANSITION = "originTransition";
	/**
	 * @see ORIGIN_TRANSITION 
	 * 的起始节点
	 */
	public static final String ORIGIN_TRANSITION_ACT = "orgActivity";
	/**
	 * @see ORIGIN_TRANSITION 
	 * 的起始节点的流出路线
	 */
	public static final String ORIGIN_TRANSITION_TRANS = "outTransition";
	
	/**
	 * 流程变量：抄送人
	 */
	public static final String COPY_USER = "ccUser";
	
}
